package Negocio;

import java.util.*;

public class Personal {
	
	public Datos.Personal oDatos;
	
	public Personal(){};
	
	//Valida ingreso de una persona al sistema
	public static boolean Ingreso(int id, String pass){
		Datos.Personal oDatos;
		try{
			oDatos = new Datos.Personal();
			Entidades.Personal persona = null;
			List personal = oDatos.GetOne(id);
			if (personal.isEmpty()){
				return false;
			}else{
				persona = (Entidades.Personal) personal.remove(0);
				if ((persona.getIdPersonal()==id) && (persona.getClave().equals(pass))){
					Inicio.setpersonalIngresado(persona);
					return true;
				}else{
					return false;
				}
			}
		} catch (Exception e) {
			e.printStackTrace();
			return false;
		}
	}
	
	// Agrega una Personal a la base de datos;
	public int Add(Entidades.Personal item) throws Exception{
		Datos.Personal oDatos;
		try{
			oDatos = new Datos.Personal();
			return oDatos.Add(item);
		}finally {
			oDatos = null;
		}
	}
	
	// Actualiza una Personal a la base de datos;
	public void Update(Entidades.Personal item) throws Exception{
		Datos.Personal oDatos;
		try{
			oDatos = new Datos.Personal();
			oDatos.Update(item);
		}finally {
			oDatos = null;
		}
	}
	
	// Elimina una Personal de la base de datos;
	public void Delete(int id) throws Exception{
		Datos.Personal oDatos;
		try{
			oDatos = new Datos.Personal();
			oDatos.Delete(id);
		}finally {
			oDatos = null;
		}
	}
	
	// Obtiene una Personal en base a un id;
	public List GetOne(int id) throws Exception{
		Datos.Personal oDatos;
		try{
			oDatos = new Datos.Personal();
			return oDatos.GetOne(id);
		}finally {
			oDatos = null;
		}
	}
	
	// Retorna todos las Personal de la base de Datos;
	public List GetAll() throws  Exception{
		Datos.Personal oDatos;
		try{
			oDatos = new Datos.Personal();
			return oDatos.GetAll();
		}finally {
			oDatos = null;
		}
		
	}
	// Abre el canal para el movimiento dentro de la tabla;
	public void Abrir() throws Exception{
			oDatos = new Datos.Personal();
			oDatos.Abrir();
	}
	// Cierra el canal para el movimiento dentro de la tabla;
	public void Cerrar() throws Exception{
			oDatos.Cerrar();
			return;
	}
	// Obtiene el Primer registro de la tabla Banco;
	public List Primero() throws Exception{
			return oDatos.Primero();
	}
	// Obtiene el Siguiente registro de la tabla Banco;
	public List Siguiente() throws Exception{
			return oDatos.Siguiente();
	}
	// Obtiene el Anterior registro de la tabla Banco;
	public List Anterior() throws Exception{
			return oDatos.Anterior();
	}
	// Obtiene el Ultimo registro de la tabla Banco;
	public List Ultimo() throws Exception{
			return oDatos.Ultimo();
	}

}